/*
 * description: 本地缓存操作
 */

const Storage = {
    /*
     * 同步获取缓存
     * @param key 键名
     */
    getStorage: function (key) {
        let value = JSON.parse(uni.getStorageSync(key));
        try {
            return value;
        } catch (e) {
            return null;
        }
    },
    /*
     * 异步获取缓存
     * @param key 键名 对象
     */
    setStorage: function (key, object) {
        if (object !== null && object !== undefined) {
            let value = object;
            if (typeof value !== 'string') {
                try {
                    value = JSON.stringify(object);
                } catch (e) {
                    value = null;
                }
            }
            if (value !== null) {
                uni.setStorageSync(key, value);
            }
        }
    },
    /*
     * 移除指定项缓存
     * @param key 键名
     */
    removeStorage: function (key) {
        try {
            uni.removeStorageSync(key);
        } catch (e) {
            return null;
        }
    },
    /*
     * 清楚所有缓存
     * @param key 键名
     */
    clearStorage: function () {
        try {
            uni.clearStorageSync();
        } catch (e) {
            return null;
        }
    },
};
